Information providing apparatus, terminal device, information providing system, and computer readable medium

ABSTRACT

An information providing apparatus includes a receiving unit and a transmitting unit. The receiving unit receives, from a terminal device connected to the information providing apparatus via a communication path, operation state information indicating an operation state of the terminal device. If it is determined, based on the operation state information, that the terminal device is in a specific operation state associated with an image processing operation, the transmitting unit transmits to the terminal device one or plural pieces of specific information associated with an image processing operation executable after the specific operation state has been completed. When transmitting the plural pieces of specific information to the terminal device, the transmitting unit transmits the plural pieces of specific information to the terminal device in accordance with priorities. The priorities are assigned to the plural pieces of specific information in accordance with the specific operation state.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a Continuation application of U.S. application Ser.No. 13/479,766 filed May 24, 2012, which claims priority under 35 USC§119 from Japanese Patent Application No. 2011-225306 filed Oct. 12,2011.

BACKGROUND

(i) Technical Field

The present invention relates to an information providing apparatus, aterminal device, an information providing system, and a computerreadable medium.

(ii) Related Art

In some cases, specific information may be provided from an informationproviding apparatus to terminal devices such as mobile phones andpersonal digital assistants (PDAs) via communication paths such asnetworks.

SUMMARY

According to an aspect of the invention, there is provided aninformation providing apparatus including a receiving unit and atransmitting unit. The receiving unit receives, from a terminal deviceconnected to the information providing apparatus via a communicationpath, operation state information indicating an operation state of theterminal device. If it is determined, based on the operation stateinformation, that the terminal device is in a specific operation stateassociated with an image processing operation, the transmitting unittransmits to the terminal device one or plural pieces of specificinformation associated with an image processing operation executableafter the specific operation state has been completed. When transmittingthe plural pieces of specific information to the terminal device, thetransmitting unit transmits the plural pieces of specific information tothe terminal device in accordance with priorities. The priorities areassigned to the plural pieces of specific information in accordance withthe specific operation state.

BRIEF DESCRIPTION OF THE DRAWINGS

An exemplary embodiment of the present invention will be described indetail based on the following figures, wherein:

FIG. 1 is a block diagram illustrating an image processing systemaccording to an exemplary embodiment of the present invention;

FIG. 2 illustrates examples of the definitions of operation states of aterminal device;

FIG. 3 illustrates examples of operation states of the terminal device;

FIG. 4 illustrates examples of functions associated with operationstates;

FIG. 5 is a sequence diagram illustrating an example of the procedure ofa process performed by the image processing system according to theexemplary embodiment of the present invention;

FIG. 6 illustrates an example of a user interface corresponding to anoperation state;

FIG. 7 illustrates an example of a user interface corresponding to anoperation state;

FIG. 8 illustrates an example of a user interface obtained in accordancewith an operation state;

FIG. 9 illustrates an example of a user interface obtained in accordancewith an operation state;

FIG. 10 illustrates an example of a user interface obtained inaccordance with an operation state;

FIG. 11 is a block diagram illustrating an image processing systemaccording to a first modification;

FIG. 12 is a sequence diagram illustrating an example of the procedureof a process performed by the image processing system according to thefirst modification;

FIG. 13 is a block diagram illustrating an image processing systemaccording to a second modification; and

FIG. 14 is a sequence diagram illustrating an example of the procedureof a process performed by the image processing system according to thesecond modification.

DETAILED DESCRIPTION

An information providing apparatus and an information providing systemaccording to an exemplary embodiment of the present invention will bedescribed with reference to FIG. 1. The information providing systemaccording to this exemplary embodiment includes an information providingapparatus and a terminal device that receives provided information. Theinformation providing apparatus according to this exemplary embodimentprovides a terminal device with plural pieces of specific information indescending order of priority. The plural pieces of specific informationare assigned priorities in accordance with the state of the operationbeing performed by the terminal device. The information providingapparatus may be an apparatus that provides a terminal device withspecific information using a web application or a web service, or may bean apparatus suitable for a specific application, such as an imageprocessing apparatus. The specific information provided by theinformation providing apparatus may be information to be viewed by auser on the terminal device, or may be a user interface (UI) for settingoperating conditions of an apparatus suitable for a specific applicationon a web browser.

FIG. 1 illustrates an example of an image processing system 1 accordingto an exemplary embodiment of the present invention. The imageprocessing system 1 includes an image processing apparatus 2 and aterminal device 3. The image processing apparatus 2 and the terminaldevice 3 exchange data via a communication path 4. An informationproviding apparatus according to an exemplary embodiment of the presentinvention may be implemented by the image processing apparatus 2, by wayof example, and an information providing system according to anexemplary embodiment of the present invention may be implemented by theimage processing apparatus 2 and the terminal device 3, by way ofexample. The image processing apparatus 2 will be described as anexample of the information providing apparatus.

Image Processing Apparatus 2

The image processing apparatus 2 may be an apparatus having at least oneof image processing functions including a function for printing receiveddata and a function for reading a paper document and converting the readdocument into electronic document data. The image processing apparatus 2may be, for example, but not be limited to, a digital multifunctionperipheral having functions of devices such as a copier, a printer, ascanner, and a facsimile machine. The image processing apparatusaccording to this exemplary embodiment may also be a printer having noscanner function, a scanner having no printing function, or the like.For example, the image processing apparatus 2 includes an image readingunit 21 that reads an image on an original document, a printing unit 22that prints the image on a sheet, and a facsimile transmission unit 23that transmits the image via facsimile. The image processing apparatus 2may also have a copying function for copying an image on an originaldocument onto a sheet by reading the image on the original documentusing the image reading unit 21 and printing the read image on the sheetusing the printing unit 22. The image processing apparatus 2 may beinstalled in a place, for example, an office, a convenience store ordrugstore, a library, a hotel, or an apartment.

Terminal Device 3

The terminal device 3 may be an apparatus that can be carried, such as amobile phone or a PDA. The terminal device 3 includes a storage unit 35that stores input-output data such as document data or image data. Thedocument data may be, for example, data created by the terminal device 3using document creation application software, or may be data created byanother apparatus and transmitted to the terminal device 3 viacommunication or the like. For example, if the terminal device 3includes a digital camera, the image data may be data captured using thedigital camera. The image data may also be data captured using anothercamera and transmitted to the terminal device 3 via communication or thelike, or may be data read by the image processing apparatus 2 or anotherimage reading device and transmitted to the terminal device 3 viacommunication or the like. In the following description, it is assumedthat the input-output data includes document data, image data or aprogram, and other control data.

Communication Path 4

The communication path 4 may be a known communication medium. Examplesof the communication path 4 include networks such as a local areanetwork (LAN) and a wide area network (WAN). The image processingapparatus 2 and the terminal device 3 may be connected to each otherthrough the communication path 4 using a cable, via wireless datacommunication such as Wi-Fi (registered trademark), or using the G3communication standard.

The image processing apparatus 2 and the terminal device 3 may also beconnected to each other via a communication path different from thecommunication path 4. For example, the different communication path is acommunication path different from a network such as a LAN or WAN, andmay be a peer to peer (P2P) communication path for directly connectingthe image processing apparatus 2 to the terminal device 3. For example,the different communication path may be an infrared or radiocommunication path. Specifically, the different communication path maybe implemented by wireless data communication or data communicationbased on IC cards. Examples of the wireless data communication includeinfrared wireless data communication, known as Infrared Data Association(IrDA), and Bluetooth (registered trademark). Examples of the datacommunication based on IC cards include data communication based oncontactless IC cards such as Felica (registered trademark). When thedifferent communication path is used, the image processing apparatus 2and the terminal device 3 may be connected to each other via twocommunication paths, that is, the communication path 4 and the differentcommunication path.

Next, the image processing apparatus 2 will be described. As an example,the image processing apparatus 2 include the image reading unit 21, theprinting unit 22, the facsimile transmission unit 23, a user interface(UI) providing unit 24, a controller 25, a transmitting and receivingunit 26, a storage unit 27, and a UI unit 28.

Image Reading Unit 21, Printing Unit 22, and Facsimile Transmission Unit23

The image reading unit 21 reads an image on an original document togenerate input-output data representing the image, and stores theinput-output data in the storage unit 27 under control of the controller25. The printing unit 22 receives the input-output data stored in thestorage unit 27, and prints the image on a sheet in accordance with theinput-output data under control of the controller 25. The facsimiletransmission unit 23 receives the input-output data stored in thestorage unit 27, and transmits the image via facsimile in accordancewith the input-output data under control of the controller 25. The imageprocessing apparatus 2 may not necessarily include all the image readingunit 21, the printing unit 22, and the facsimile transmission unit 23,and may include at least one of the image reading unit 21, the printingunit 22, and the facsimile transmission unit 23.

UI Providing Unit 24

The UI providing unit 24 of the image processing apparatus 2 createsdata of a user interface (UI) for performing setting about the functions(image processing) of the image processing apparatus 2 using theterminal device 3. For example, the UI providing unit 24 creates data ofa user interface for setting, using the terminal device 3, the operatingconditions of the image reading unit 21, the printing unit 22, or thefacsimile transmission unit 23. The UI providing unit 24 creates data ofa user interface corresponding to a UI unit 34 of the terminal device 3.In the following description, a user interface for setting the operatingconditions for the functions of the image processing apparatus 2 may bereferred to as a “setting user interface”. For example, the UI providingunit 24 creates hypertext markup language (HTML) data of a setting userinterface in order to display the setting user interface on a webbrowser. The UI providing unit 24 may create HTML data of a setting userinterface using an object-oriented programming language such asJavaScript (registered trademark). The UI providing unit 24 may alsocreate data of a setting user interface as a Flash (registeredtrademark) application to create data of a setting user interfaceincluding sound and moving images or animation. The UI providing unit 24further creates connection information used to allow the terminal device3 to access the data of the setting user interface created by the UIproviding unit 24 via the communication path 4. The connectioninformation may be address data by which the terminal device 3 accessesthe data of the setting user interface created by the UI providing unit24. The address data may be, for example, Uniform Resource Locator(URL). When the terminal device 3 is connected to the image processingapparatus 2 via the communication path 4, the UI providing unit 24provides the UI unit 34 of the terminal device 3 with data of thesetting user interface via the communication path 4. The data of thesetting user interface may be stored in the storage unit 27. Further,the UI providing unit 24 may create data of a user interface for settingthe operating conditions described above on the UI unit 28 of the imageprocessing apparatus 2, and may provide the UI unit 28 with the createddata of the user interface. In a case where the UI providing unit 24 ofthe image processing apparatus 2 provides the terminal device 3 withaddress data, HTML data for setting the operating conditions describedabove is generated at the location of the URL provided by a web serverincluded in the UI providing unit 24. The terminal device 3 accesses theURL defined by the received address data, and therefore the userinterface may be displayed on and the operating conditions may be set onthe web browser of the terminal device 3.

Controller 25

The controller 25 of the image processing apparatus 2 controls theoperations of the respective units of the image processing apparatus 2.For example, the controller 25 receives request information indicating arequest for specific information and operation state informationindicating the state of the operation of the terminal device 3 from theterminal device 3 via the transmitting and receiving unit 26. Thecontroller 25 detects the state of the operation of the terminal device3 based on the operation state information, and provides the terminaldevice 3 with one or plural pieces of specific information relating tothe state of the operation. When providing the terminal device 3 withplural pieces of specific information, the controller 25 provides theterminal device 3 with plural pieces of specific information, which areassigned priories in accordance with the state of the operation, indescending order of priority. For example, if it is determined, on thebasis of the operation state information, that the terminal device 3 isin the state of a specific operation relating to image processing, thecontroller 25 provides the terminal device 3 with specific informationrelating to one or plural image processing operations that are expectedto be executed after the specific operation. When providing the terminaldevice 3 with plural pieces of specific information, the controller 25provides the terminal device 3 with plural pieces of specificinformation relating to the plural image processing operations, whichare assigned priorities in accordance with the state of the operations,in descending order of priority. In the following description, the stateof the operation may be referred to as the “operation state”. Theoperation state and the specific information will be described.

State of Operation of Terminal Device 3

First, a description will be made of the operation state of the terminaldevice 3. As an example, the operation state of the terminal device 3may be defined as the type of application software operating on theterminal device 3 or the operation being performed using the applicationsoftware operating on the terminal device 3.

An example of the operation state will be described with reference toFIG. 2. FIG. 2 illustrates examples of the definitions of operationstates of the terminal device 3. The operation state of the terminaldevice 3 is assigned levels in accordance with accuracy. For example, inlevel A, the type of the application software operating on the terminaldevice 3 corresponds to the operation state of the terminal device 3.The operation state has values corresponding to “viewer”, “datamanagement application”, “email software”, “address book”, etc. The“viewer” represents, for example, application software for allowing animage to be displayed on a display device. The “data managementapplication” represents data management application software formanaging files and folders. A file is a collection of pieces of data,and may also be referred to as a data set. A folder is a location wherefiles are classified and managed in a storage device, and may also bereferred to as a directory. The “email software” represents emailapplication software for transmitting and receiving emails. The “addressbook” represents application software for managing numbers representingthe addresses of emails, telephone numbers, or facsimile transmissionnumbers. For example, a map in which operation states are associatedwith application software names is created in advance, and the value ofthe operation state corresponding to the application software operatingon the terminal device 3 may be obtained on the basis of the name of theoperating application software and the map.

Further, for example, in level B, the content of the operation beingperformed using the application software operating on the terminaldevice 3 corresponds to the operation state of the terminal device 3.For example, map application software for allowing a map to be displayedon the display device is operating on the terminal device 3. In thiscase, if a map of the area XXX is being displayed on the UI unit 34 ofthe terminal device 3, the content that “a map of the area XXX is beingdisplayed” corresponds to the value of the operation state. In addition,authoring application software for editing data such as image and audiodata is operating on the terminal device 3. In this case, if an image isbeing displayed on the UI unit 34 of the terminal device 3, the contentthat “an image is opening” corresponds to the value of the operationstate.

An operation state acquisition unit 32 of the terminal device 3, whichwill be described below, acquires the operation state of the terminaldevice 3 in accordance with the standard of level A or the standard oflevel B. Further, the terminal device 3 transmits request informationindicating a request for specific information and operation stateinformation indicating the operation state to the image processingapparatus 2, and the controller 25 of the image processing apparatus 2receives the request information and the operation state information.

An example of the operation state information transmitted from theterminal device 3 will be described with reference to FIG. 3. FIG. 3illustrates examples of operation states of the terminal device 3. Forexample, application software regarding a viewer is operating on theterminal device 3. In this case, if a file is being displayed on the UIunit 34 of the terminal device 3, the content that “a file is beingdisplayed” corresponds to the value of the operation state. In thiscase, operation state information indicating that “a file is beingdisplayed” is transmitted from the terminal device 3 to the imageprocessing apparatus 2. In addition, data management applicationsoftware is operating on the terminal device 3. In this case, if afolder is being displayed on the UI unit 34 of the terminal device 3,the content that “a folder is being displayed” corresponds to the valueof the operation state. In this case, operation state informationindicating that “a folder is being displayed” is transmitted from theterminal device 3 to the image processing apparatus 2. In addition,email application software is operating on the terminal device 3. Inthis case, if a user is creating an email, the content that “an email isbeing created” corresponds to the value of the operation state. In thiscase, operation state information indicating that “an email is beingcreated” is transmitted from the terminal device 3 to the imageprocessing apparatus 2. In addition, application software regarding anaddress book is operating on the terminal device 3. In this case, if theaddress of an email or a telephone number is being displayed on the UIunit 34 of the terminal device 3, the content that “a destination isbeing displayed” corresponds to the value of the operation state. Inthis case, operation state information indicating that “a destination isbeing displayed” is transmitted from the terminal device 3 to the imageprocessing apparatus 2.

Specific Information Provided from Image Processing Apparatus 2 toTerminal Device 3

Next, a description will be made of specific information provided fromthe image processing apparatus 2 to the terminal device 3. The specificinformation may be, for example, data of a setting user interface forsetting the operating conditions of the functions (image processing) ofthe image processing apparatus 2 on the terminal device 3, or addressdata of the setting user interface. More specifically, the specificinformation may be data of a setting user interface for setting, on theterminal device 3, the operating conditions of the functions of theimage processing apparatus 2 that are expected to be executed inassociation with the operation state of the terminal device 3, oraddress data of the setting user interface. For example, the controller25 selects plural functions of the image processing apparatus 2, whichare assigned priorities in accordance with the operation state of theterminal device 3, and provides the terminal device 3 with pieces ofdata of setting user interfaces for setting the operating conditions ofthe individual functions, or with pieces of address data of therespective setting user interfaces in descending order of priority.

Examples of the functions of the image processing apparatus 2 include animage reading function performed by the image reading unit 21, aprinting function performed by the printing unit 22, and a facsimiletransmission function performed by the facsimile transmission unit 23.The controller 25 provides the terminal device 3 with data of a settinguser interface for setting the operating conditions of the image readingunit 21, the printing unit 22, or the facsimile transmission unit 23, orwith address data of the setting user interface in descending order ofpriority.

The priority of each individual function represents, for example, howprobable it is that the function will be executed after the operationbeing performed by the terminal device 3 is completed. That is, afunction having a relatively high probability of being executed afterthe operation being performed by the terminal device 3 is completed isassigned a relatively high priority, and a function having a relativelylow probability of being executed after the operation being performed bythe terminal device 3 is completed is assigned a relatively lowpriority. The priority of each individual function may be determined inadvance on the basis of, for example, the frequency with which thefunction has been executed in the past. The controller 25 selects pluralfunctions that are expected to be executed after the operation of theterminal device 3 is completed, in association with the operation of theterminal device 3, and provides the terminal device 3 with pieces ofdata of setting user interfaces for setting the operating conditions ofthe individual functions, or with pieces of address data of therespective setting user interfaces in descending order from the functionhaving the highest probability of being executed (i.e., in descendingorder of priority).

The functions of the image processing apparatus 2 that are associatedwith operation states will be described with reference to FIG. 4. FIG. 4illustrates examples of functions associated with operation states. Forexample, if the operation state of the terminal device 3 indicates that“a file is being displayed”, the highest probability is that thefunction “(1) Printing from Terminal device” will be executed after thedisplay of the file has been completed, the second highest probabilityis that the function “(2) Facsimile transmission from Terminal device”will be executed after the display of the file has been completed, andthe third highest probability is that the function “(3) Display of alist of functions” will be executed after the display of the file hasbeen completed. Here, the function “(1) Printing from Terminal device”is a function for executing a series of processes for transmitting, byusing the terminal device 3, input-output data of a file being displayedon the terminal device 3 to the image processing apparatus 2 andprinting, by using the printing unit 22, an image on a sheet inaccordance with the input-output data. The function “(2) Facsimiletransmission from Terminal device” is a function for executing a seriesof processes for transmitting, by using the terminal device 3,input-output data of a file being displayed on the terminal device 3 tothe image processing apparatus 2 and transmitting, by using thefacsimile transmission unit 23, an image based on the input-output datato a destination specified by the terminal device 3 via facsimile. Thefunction “(3) Display of a list of functions” is a function fordisplaying a list of functions of the image processing apparatus 2 onthe terminal device 3.

For example, if it is determined, on the basis of the operation stateinformation, that the operation state of the terminal device 3 indicatesthat “a file is being displayed”, the controller 25 firstly provides theterminal device 3 with address data of a setting user interface forsetting the operating conditions of the highest priority function “(1)Printing from Terminal device”. Further, the controller 25 secondlyprovides the terminal device 3 with address data of a setting userinterface for setting the operating conditions of the second highestpriority function “(2) Facsimile transmission from Terminal device”.Further, the controller 25 thirdly provides the terminal device 3 withaddress data of a setting user interface for setting the third highestpriority function “(3) Display of a list of functions”.

For example, if the operation state of the terminal device 3 indicatesthat “a folder is being displayed”, the highest probability is that thefunction “(1) Scanning to Terminal device” will be executed after thedisplay of the folder has been completed, the second highest probabilityis that the function “(2) Acquisition of box document to Terminaldevice” will be executed after the display of the folder has beencompleted, and the third highest probability is that the function “(3)Display of a list of functions” will be executed after the display ofthe folder has been completed. Here, the function “(1) Scanning toTerminal device” is a function for executing a series of processes forreading, by using the image reading unit 21, an image on an originaldocument to generate input-output data indicating the image, andtransmitting, by using the image processing apparatus 2, theinput-output data to the terminal device 3. The function “box operation”relating to the function “(2) Acquisition of box document to Terminaldevice” includes a function for saving input-output data in the storageunit 27 of the image processing apparatus 2, and a function foracquiring the input-output data from the storage unit 27 of the imageprocessing apparatus 2. The function “(2) Acquisition of box document toTerminal device” is a function for transmitting, by using the imageprocessing apparatus 2, the input-output data stored in the storage unit27 to the terminal device 3 and acquiring, by using the terminal device3, the input-output data.

For example, if it is determined, on the basis of the operation stateinformation, that the operation state of the terminal device 3 indicatesthat “a folder is being displayed”, the controller 25 firstly providesthe terminal device 3 with address data of a setting user interface forsetting the operating conditions of the highest priority function “(1)Scanning to Terminal device”. Further, the controller 25 secondlyprovides the terminal device 3 with address data of a setting userinterface for setting the operating conditions of the second highestpriority function “(2) Acquisition of box document to Terminal device”.Further, the controller 25 thirdly provides the terminal device 3 withaddress data of a setting user interface for setting the third highestpriority function “(3) Display of a list of functions”.

For example, if the operation state of the terminal device 3 indicatesthat “an email is being created”, the highest probability is that thefunction “(1) Scanning to Terminal device” will be executed after thecreation of the email has been completed, the second highest probabilityis that the function “(2) Acquisition of box document to Terminaldevice” will be executed after the creation of the email has beencompleted, and the third highest probability is that the function “(3)Display of a list of functions” will be executed after the creation ofthe email has been completed.

For example, if it is determined, on the basis of the operation stateinformation, that the operation state of the terminal device 3 indicatesthat “an email is being created”, the controller 25 firstly provides theterminal device 3 with address data of a setting user interface forsetting the operating conditions of the highest priority function “(1)Scanning to Terminal device”. Further, the controller 25 secondlyprovides the terminal device 3 with address data of a setting userinterface for setting the operating conditions of the second highestpriority function “(2) Acquisition of box document to Terminal device”.Further, the controller 25 thirdly provides the terminal device 3 withaddress data of a setting user interface for setting the third highestpriority function “(3) Display of a list of functions”.

For example, if the operation state of the terminal device 3 indicatesthat “a destination is being displayed”, the highest probability is thatthe function “(1) Scanning to Email” will be executed after the displayof the destination has been completed, the second highest probability isthat the function “(2) Scanning to Facsimile transmission” will beexecuted after the display of the destination has been completed, andthe third highest probability is that the function “(3) Display of alist of functions” will be executed after the display of the destinationhas been completed. Here, the function “(1) Scanning to Email” is afunction for executing a series of processes for reading, by using theimage reading unit 21, an image on an original document to generateinput-output data indicating the image, and transmitting, by using theimage processing apparatus 2, the input-output data to the addressspecified by the terminal device 3 via email. The function “(2) Scanningto Facsimile transmission” is a function for executing a series ofprocesses for reading, by using the image reading unit 21, an image onan original document to generate input-output data indicating the image,and transmitting, by using the facsimile transmission unit 23, an imagebased on the input-output data to the destination specified by theterminal device 3 via facsimile.

For example, if it is determined, on the basis of the operation stateinformation, that the operation state of the terminal device 3 indicatesthat “a destination is being displayed”, the controller 25 firstlyprovides the terminal device 3 with address data of a setting userinterface for setting the operating conditions of the highest priorityfunction “(1) Scanning to Email”. Further, the controller 25 secondlyprovides the terminal device 3 with address data of a setting userinterface for setting the operating conditions of the second highestpriority function “(2) Scanning to Facsimile transmission”. Further, thecontroller 25 thirdly provides the terminal device 3 with address dataof a setting user interface for setting the third highest priorityfunction “(3) Display of a list of functions”.

Correspondence relationship information indicating correspondencerelationships between individual functions assigned priorities andoperation states is created in advance, and is stored in advance in, forexample, the storage unit 27. As an example, information indicating thecorrespondence relationships illustrated in FIG. 4 is created inadvance, and is stored in advance in the storage unit 27. The prioritiesof the individual functions to be executed in accordance with theoperation states illustrated in FIG. 4 may be determined on the basisof, for example, the frequency with which each function was executed inthe past. The controller 25 refers to the correspondence relationshipinformation stored in the storage unit 27 to select plural functions,which are assigned priorities in accordance with the operation states ofthe terminal device 3, and provides the terminal device 3 with pieces ofaddress data of setting user interfaces for setting the operatingconditions of the selected functions, in descending order of priority.

Instead of providing the terminal device 3 with pieces of address dataof plural setting user interfaces in descending order of priority, thecontroller 25 may provide the terminal device 3 with pieces of data ofplural setting user interfaces in descending order of priority. That is,upon receipt of a request for specific information from the terminaldevice 3, the controller 25 may provide the terminal device 3 withpieces of data of plural setting user interfaces in descending order ofpriority without providing the terminal device 3 with pieces of addressdata of the setting user interfaces. The controller 25 may also providethe terminal device 3 with only the highest priority specificinformation. The controller 25 may also collectively provide theterminal device 3 with pieces of data or pieces of address data ofplural setting user interfaces together with information regarding thepriorities corresponding to the pieces of data or pieces of address dataof the respective setting user interfaces. In this case, the terminaldevice 3 interprets the information regarding the priorities assigned tothe pieces of data or pieces of address data of the respective settinguser interfaces, and performs control to display a screen of a settinguser interface in accordance with the priorities.

The controller 25 receives control data (command data) transmitted fromthe terminal device 3, and controls the operation of the image readingunit 21, the printing unit 22, or the facsimile transmission unit 23 inaccordance with the control data. The control data may be dataindicating a command for image processing to be performed by the imageprocessing apparatus 2, and may be, as an example, data indicating theoperating conditions for reading an image, printing an image, ortransmitting an image via facsimile. The control data includes, forexample, the following information: The control data includesinformation indicating a function selected by a user from among an imagereading function, a printing function, and a facsimile transmissionfunction. In a case where an image is read by the image reading unit 21,the control data includes information regarding image reading conditionssuch as resolution, density, monochrome/color selection, the sizeoriginal document, and the file name of read image data. In a case whereprinting is performed by the printing unit 22, the control data includesinformation regarding printing conditions such as resolution, density,monochrome/color selection, paper size, the number of copies to beprinted, and the file name of data to be printed. In a case wherefacsimile transmission is performed by the facsimile transmission unit23, the control data includes information regarding facsimiletransmission conditions such as resolution, density, the telephonenumber of the transmission destination, and the file name of data to betransmitted. For example, the controller 25 receives a hypertexttransfer protocol (HTTP) request transmitted from the terminal device 3,analyzes the content of the request, and controls the operation of theimage reading unit 21, the printing unit 22, or the facsimiletransmission unit 23.

Transmitting and Receiving Unit 26

The transmitting and receiving unit 26 of the image processing apparatus2 receives request information indicating a request for specificinformation and operation state information indicating the operationstate of the terminal device 3 from the terminal device 3 via thecommunication path 4, and outputs the request information and theoperation state information to the controller 25.

Further, the transmitting and receiving unit 26 transmits address databy which the terminal device 3 accesses data of a setting user interfacevia the communication path 4 to the terminal device 3 via thecommunication path 4. For example, in the connection of the imageprocessing apparatus 2 to a LAN, the transmitting and receiving unit 26transmits address data of the setting user interface in the LAN to theterminal device 3 via the communication path 4. In the connection of theimage processing apparatus 2 to a WAN, the transmitting and receivingunit 26 transmits address data of the setting user interface in the WANto the terminal device 3 via the communication path 4.

The transmitting and receiving unit 26 further transmits data of thesetting user interface to the terminal device 3 via the communicationpath 4. Specifically, when the terminal device 3 accesses data of thesetting user interface via the communication path 4 using the addressdata transmitted from the image processing apparatus 2, the transmittingand receiving unit 26 transmits the data of the setting user interfaceto the terminal device 3 via the communication path 4.

The transmitting and receiving unit 26 transmits pieces of address dataof plural setting user interfaces to the terminal device 3 via thecommunication path 4 in descending order of priority under control ofthe controller 25. Alternatively, instead of transmitting pieces ofaddress data of plural setting user interfaces to the terminal device 3in descending order of priority, the transmitting and receiving unit 26may transmit pieces of data of the plural setting user interfaces to theterminal device 3 in descending order of priority under control of thecontroller 25.

In addition, if the image reading unit 21 has read an image andgenerated input-output data in accordance with an instruction from theterminal device 3, the transmitting and receiving unit 26 transmits theinput-output data generated by the image reading unit 21 to the terminaldevice 3 via the communication path 4. Further, the transmitting andreceiving unit 26 receives data to be printed by the printing unit 22 ordata to be transmitted from the facsimile transmission unit 23 andcontrol data (command data) to the terminal device 3 via thecommunication path 4. Specifically, the transmitting and receiving unit26 receives, as an HTTP request, control data from the terminal device 3via the communication path 4. In a case where printing or facsimiletransmission is performed by the image processing apparatus 2, thetransmitting and receiving unit 26 receives input-output data to beprinted or transmitted via facsimile from the terminal device 3 via thecommunication path 4. In a case where an image is read by the imageprocessing apparatus 2, the transmitting and receiving unit 26 transmitsinput-output data generated by the image reading unit 21 to the terminaldevice 3 via the communication path 4 as an HTTP response to the HTTPrequest.

The image processing apparatus 2 and the terminal device 3 may beconnected to each other via two communication paths, that is, thecommunication path 4 and the different communication path describedabove. For example, the transmitting and receiving unit 26 receives therequest information and the operation state information from theterminal device 3 via the different communication path. Further, thetransmitting and receiving unit 26 transmits address data of a settinguser interface to the terminal device 3 via the different communicationpath. For example, if a communication path based on wireless datacommunication such as IrDA or Bluetooth (registered trademark) is usedas the different communication path, the transmitting and receiving unit26 communicates with a transmitting and receiving unit 33 of theterminal device 3 through infrared or radio communication with thetransmitting and receiving unit 33, and receives the request informationand the operation state information from the transmitting and receivingunit 33 via the different communication path. Further, the transmittingand receiving unit 26 transmits pieces of address data of plural settinguser interfaces to the transmitting and receiving unit 33 via thedifferent communication path in descending order of priority. When thetransmitting and receiving unit 33 of the terminal device 3 accessesdata of a setting user interface via the communication path 4 using theaddress data transmitted from the image processing apparatus 2, thetransmitting and receiving unit 26 transmits the data of the settinguser interface to the terminal device 3 via the communication path 4.

In this manner, the terminal device 3 may transmit the requestinformation and the operation state information to the image processingapparatus 2 via a communication path different from the communicationpath 4, and the image processing apparatus 2 may transmit pieces ofaddress data of plural setting user interface to the terminal device 3via the different communication path in descending order of priority andmay transmit pieces of data of the setting user interface to theterminal device 3 via the communication path 4.

Storage Unit 27

The storage unit 27 of the image processing apparatus 2 storescorrespondence relationship information indicating correspondencerelationships between plural pieces of specific information assignedpriorities and operation states of the terminal device 3. As an example,the storage unit 27 stores correspondence relationship informationindicating correspondence relationships between functions of the imageprocessing apparatus 2 that are assigned priorities and operation statesof the terminal device 3. The storage unit 27 stores, for example, thecorrespondence relationship information illustrated in FIG. 4. Thestorage unit 27 also stores the input-output data generated by the imagereading unit 21. The storage unit 27 also stores data to be printed,which has been transmitted from the terminal device 3, data to betransmitted via facsimile, and control data (command data).

UI Unit 28

The UI unit 28 of the image processing apparatus 2 has a display, anddisplays, for example, a user interface provided from the UI providingunit 24. The UI unit 28 receives control data regarding the operatingconditions of the image reading unit 21, the printing unit 22, or thefacsimile transmission unit 23, which has been input by a user.

Next, the terminal device 3 will be described. As an example, theterminal device 3 includes a controller 31, the operation stateacquisition unit 32, the transmitting and receiving unit 33, the UI unit34, and the storage unit 35.

Controller 31

The controller 31 of the terminal device 3 executes application softwarespecified by a user. For example, the controller 31 executes applicationsoftware including application software regarding a viewer for allowingan image to be displayed on the UI unit 34, data management applicationsoftware for managing files and folders, email application software fortransmitting and receiving emails, application software regarding anaddress book for managing the addresses of emails, telephone numbers, orthe like, map application software for allowing a map to be displayed onthe UI unit 34, and authoring application software for editing data suchas image data and audio data. The application software described abovemay be stored in advance in, for example, the storage unit 35, or may betransmitted from an external device to the terminal device 3 viacommunication or the like.

Upon receipt of an instruction from the user for acquiring specificinformation relating to the operation being operated by the terminaldevice 3, the controller 31 requests the operation state acquisitionunit 32 to acquire the specific information. For example, the controller31 requests the operation state acquisition unit 32 to acquire data of asetting user interface for setting the operating conditions of eachindividual function of the image processing apparatus 2 on the terminaldevice 3.

Operation State Acquisition Unit 32

The operation state acquisition unit 32 of the terminal device 3acquires the state of the operation being performed by the terminaldevice 3. For example, the operation state acquisition unit 32 acquires,as an operation state, the type of the application software operating onthe controller 31 or the operation being performed using the operatingapplication software.

For example, if operation states are defined on the basis of the level Aillustrated in FIG. 2, a map in which the values of the operation statesillustrated in FIG. 2 and the names of application software areassociated with each other is created in advance, and is stored inadvance in the storage unit 35. The operation state acquisition unit 32acquires the name of the application software operating on the terminaldevice 3 from the controller 31, and refers to the map described aboveto acquire the value of the operation state corresponding to theoperating application software. For example, if application softwareregarding a viewer is being executed by the controller 31, the operationstate acquisition unit 32 acquires the name of the application softwareregarding the viewer from the controller 31, and refers to the map toacquire the value (viewer) of the operation state. If data managementapplication software for managing files and folders is being executed bythe controller 31, the operation state acquisition unit 32 acquires thename of the data management application software from the controller 31,and refers to the map described above to acquire the value (datamanagement application) of the operation state.

If operation states are defined on the basis of the level B illustratedin FIG. 2, the controller 31 outputs to the operation state acquisitionunit 32 operation state information indicating the operation beingperformed by the controller 31 using the application software operatingon the terminal device 3, and the operation state acquisition unit 32acquires an operation state. For example, map application software isbeing executed by the controller 31. In this case, if a map of the areaXXX is being displayed on the UI unit 34, the controller 31 outputs tothe operation state acquisition unit 32 operation state informationindicating that “a map of the area XXX is being displayed”. In addition,authoring application software is being executed by the controller 31.In this case, if an image is being displayed on the UI unit 34, thecontroller 31 outputs to the operation state acquisition unit 32operation state information indicating that “an image is beingdisplayed”.

As an example, the operation state acquisition unit 32 may acquire anoperation state of the terminal device 3 in accordance with the standardof the level A or the standard of the level B.

The operation state acquisition unit 32 outputs to the transmitting andreceiving unit 33 request information indicating a request for specificinformation and operation state information indicating the operationstate. The operation state acquisition unit 32 may add the operationstate information to the request information, and output resultinginformation to the transmitting and receiving unit 33.

Transmitting and Receiving Unit 33

The transmitting and receiving unit 33 of the terminal device 3transmits request information indicating a request for specificinformation and operation state information indicating the operationstate of the terminal device 3 to the image processing apparatus 2 viathe communication path 4.

Further, the transmitting and receiving unit 33 receives address data ofa setting user interface from the image processing apparatus 2 via thecommunication path 4. Since pieces of address data of plural settinguser interfaces are transmitted from the image processing apparatus 2 indescending order of priority in accordance with the operation state ofthe terminal device 3, the transmitting and receiving unit 33sequentially receives the pieces of address data. The pieces of addressdata received by the transmitting and receiving unit 33 are stored inthe storage unit 35 of the terminal device 3.

The transmitting and receiving unit 33 further receives data of asetting user interface from the image processing apparatus 2 via thecommunication path 4. Specifically, a user activates a web browser onthe terminal device 3. A program for the web browser is stored inadvance in the storage unit 35. When a user gives an instruction foractivating a web browser using the UI unit 34, the controller 31activates the web browser in accordance with the instruction from theuser. Then, the transmitting and receiving unit 33 accesses the data ofthe setting user interface via the communication path 4 using theaddress data specified by the user. After that, the data of the settinguser interface is provided from the UI providing unit 24 of the imageprocessing apparatus 2 to the UI unit 34 of the terminal device 3through the transmitting and receiving unit 26 of the image processingapparatus 2, the communication path 4, and the transmitting andreceiving unit 33 of the terminal device 3. The web browser of theterminal device 3 displays the setting user interface received from theimage processing apparatus 2. If the transmitting and receiving unit 33receives address data from the image processing apparatus 2, thecontroller 31 may automatically activate the web browser without waitingfor an instruction from the user, and the transmitting and receivingunit 33 may access the data of the setting user interface via thecommunication path 4 using the address data. For example, thetransmitting and receiving unit 33 may access the data of the settinguser interface via the communication path 4 using the highest priorityaddress data without waiting for an instruction from the user.

Further, the transmitting and receiving unit 33 transmits data to beprinted by the printing unit 22 of the image processing apparatus 2,data to be transmitted by the facsimile transmission unit 23 of theimage processing apparatus 2, and control data (command data) to theimage processing apparatus 2 via the communication path 4. If the imagereading unit 21 has read an image and generated input-output data inaccordance with an instruction from the terminal device 3, thetransmitting and receiving unit 33 receives the input-output datagenerated by the image reading unit 21 from the image processingapparatus 2 via the communication path 4.

For example, a user inputs, through the setting user interface displayedon the UI unit 34, control data (command data) regarding the operatingconditions of the image reading unit 21, the printing unit 22, or thefacsimile transmission unit 23. The transmitting and receiving unit 33transmits, as an HTTP request, the control data to the image processingapparatus 2 via the communication path 4. If printing or facsimiletransmission is to be performed by the image processing apparatus 2, thetransmitting and receiving unit 33 transmits the data to be printed ortransmitted via facsimile to the image processing apparatus 2 via thecommunication path 4. The data to be printed or transmitted viafacsimile is specified by a user using the UI unit 34. If an image is tobe read by the image processing apparatus 2, the transmitting andreceiving unit 33 receives input-output data generated by the imagereading unit 21 from the image processing apparatus 2 via thecommunication path 4 as an HTTP response to the HTTP request.

Furthermore, as described above, if the image processing apparatus 2 andthe terminal device 3 are connected to each other via two communicationpaths, that is, the communication path 4 and the different communicationpath described above, the transmitting and receiving unit 33 transmitsthe request information and the operation state information to the imageprocessing apparatus 2 via the different communication path, andreceives address data of a setting user interface from the imageprocessing apparatus 2 via the different communication path. Thetransmitting and receiving unit 33 receives pieces of address data ofplural setting user interfaces from the transmitting and receiving unit26 via the different communication path in descending order of priority.

UI Unit 34

The UI unit 34 of the terminal device 3 has a display, and displaysplural pieces of specific information. For example, the UI unit 34displays pieces of address data of plural setting user interfacestransmitted from the image processing apparatus 2. The UI unit 34 maydisplay the pieces of address data in list form, or may display thepieces of address data in descending order of priority in accordancewith the operation state. For example, the UI unit 34 may display thepieces of address data as thumbnail images (small images), or maydisplay the pieces of address data in descending order of priority inaccordance with an instruction from the user. The UI unit 34 furtherdisplays a setting user interface.

Further, the UI unit 34 receives an instruction from the user foracquiring specific information and address data specified by a user. Forexample, a user specifies, using the UI unit 34, address data of asetting user interface for setting the operating condition of a function(image processing) to be executed by the user among plural pieces ofaddress data being displayed on the UI unit 34. The UI unit 34 furtherreceives the control data regarding the operating conditions of theimage reading unit 21, the printing unit 22, or the facsimiletransmission unit 23 of the image processing apparatus 2, which has beeninput by a user. The UI unit 34 may display an image represented byinput-output data generated by the image reading unit 21 of the imageprocessing apparatus 2.

Storage Unit 35

The storage unit 35 of the terminal device 3 stores input-output data.For example, the storage unit 35 stores input-output data generated bythe image reading unit 21 of the image processing apparatus 2, andinput-output data to be printed or transmitted via facsimile from theimage processing apparatus 2. The storage unit 35 also storesapplication software to be executed by the controller 31. The storageunit 35 further stores pieces of address data of plural setting userinterfaces transmitted from the image processing apparatus 2.

Next, the operation of the image processing system 1 and an example ofhow a user uses the image processing system 1 will be described withreference to FIG. 5. FIG. 5 is a sequence diagram illustrating anexample of the procedure of a process performed by the image processingsystem 1.

First, when a user gives an instruction using the UI unit 34 of theterminal device 3 for activating specific application software, thecontroller 31 of the terminal device 3 activates the applicationsoftware specified by the user. The user uses the activated applicationsoftware to create a document, display a file such as an image file or adocument file on the UI unit 34, or display a folder on the UI unit 34.

FIGS. 6 and 7 illustrate an example of the user interface to bedisplayed on the UI unit 34. FIGS. 6 and 7 illustrate an example of auser interface corresponding to an operation state.

FIG. 6 illustrates an example of the file to be displayed on the UI unit34 of the terminal device 3. For example, the controller 31 activatesdocument creation application software, and a user creates and edits adocument using the UI unit 34. A user interface 100 displayed on the UIunit 34 includes, as an example, a display area 110 where the name of adocument is displayed, scroll operation portions 120 and 140 used toscroll the document to move to another page, and a display area 130 inwhich the content of the document is displayed.

FIG. 7 illustrates an example of the folder to be displayed on the UIunit 34 of the terminal device 3. For example, the controller 31activates data management application software, and a user specifies afolder or file using the UI unit 34. A user interface 200 displayed onthe UI unit 34 includes, as an example, a display area 210 in which thename of a folder is displayed, scroll operation portions 220 and 240used to display another folder, and a display area 230 in which data inthe folder or a sub-folder in the folder is displayed.

The user gives an instruction using the UI unit 34 of the terminaldevice 3 for acquiring specific information regarding an operation (stepS01). Information indicating the instruction for acquiring the specificinformation is output from the UI unit 34 to the controller 31. Thecontroller 31 requests the operation state acquisition unit 32 toacquire the specific information (step S02).

The operation state acquisition unit 32 acquires the state of theoperation being performed by the terminal device 3 (step S03). Forexample, as illustrated in FIG. 6, if a file is being displayed on theUI unit 34, the controller 31 outputs operation state informationindicating that “a file is being displayed” to the operation stateacquisition unit 32, and the operation state acquisition unit 32acquires the operation state of the terminal device 3. As illustrated inFIG. 7, if a folder is being displayed on the UI unit 34, the controller31 outputs operation state information indicating that “a folder isbeing displayed” to the operation state acquisition unit 32, and theoperation state acquisition unit 32 acquires the operation state of theterminal device 3. The operation state acquisition unit 32 outputs therequest information and the operation state information to thetransmitting and receiving unit 33.

The transmitting and receiving unit 33 of the terminal device 3transmits the request information and the operation state information tothe image processing apparatus 2 via the communication path 4 (stepS04). Alternatively, the transmitting and receiving unit 33 may transmitthe request information and the operation state information to the imageprocessing apparatus 2 via a communication path different from thecommunication path 4. The transmitting and receiving unit 26 of theimage processing apparatus 2 receives the request information and theoperation state information from the terminal device 3 via thecommunication path 4 or the different communication path, and outputsthe request information and the operation state information to thecontroller 25.

The controller 25 selects plural pieces of specific information, whichare assigned priorities in accordance with the operation state indicatedby the operation state information (step S05). For example, thecontroller 25 refers to the correspondence relationship informationillustrated in FIG. 4, and selects plural functions, which are assignedpriorities in accordance with the operation state. For example, if it isdetermined, on the basis of the operation state information, that theoperation state of the terminal device 3 indicates that “a file is beingdisplayed”, the controller 25 selects the function “(1) Printing fromTerminal device” as the highest priority function, selects the function“(2) Facsimile transmission from Terminal device” as the second highestpriority function, and selects the function “(3) Display of a list offunctions” as the third highest priority function. Then, the controller25 outputs address data of a setting user interface for setting theoperating conditions of each function to the transmitting and receivingunit 26.

The transmitting and receiving unit 26 transmits specific informationhaving the highest priority (top priority) to the terminal device 3 viathe communication path 4 or the different communication path (step S06).For example, the transmitting and receiving unit 26 firstly transmitsaddress data of a setting user interface for setting the operatingconditions of the function “(1) Printing from Terminal device” to theterminal device 3. Further, the transmitting and receiving unit 26transmits specific information having the second highest priority to theterminal device 3 via the communication path 4 or the differentcommunication path (step S07). For example, the transmitting andreceiving unit 26 secondly transmits address data of a setting userinterface for setting the operating conditions of the function “(2)Facsimile transmission from Terminal device” to the terminal device 3.Then, the transmitting and receiving unit 26 transmits specificinformation having the N-th highest priority to the terminal device 3via the communication path 4 or the different communication path (stepS08). Accordingly, the transmitting and receiving unit 26 transmitsplural pieces of specific information selected by the controller 25 tothe terminal device 3 in descending order of priority.

The transmitting and receiving unit 33 of the terminal device 3 receivesthe plural pieces of specific information from the image processingapparatus 2 via the communication path 4 or the different communicationpath, and outputs the plural pieces of specific information assigned thepriorities to the controller 31 (step S09). For example, thetransmitting and receiving unit 33 receives pieces of address data ofthe plural setting user interfaces assigned the priorities from theimage processing apparatus 2 via the communication path 4 or thedifferent communication path, and outputs the pieces of address dataassigned the priorities to the controller 31.

The controller 31 causes the pieces of specific information acquiredfrom the image processing apparatus 2 to be displayed on the UI unit 34(step S10). For example, the controller 31 may cause the pieces ofaddress data to be displayed as thumbnail images on the UI unit 34, ormay cause the pieces of address data to be displayed on the UI unit 34in descending order of priority.

Then, the user activates a web browser on the terminal device 3, andspecifies a desired piece of address data among the pieces of addressdata being displayed on the UI unit 34 using the UI unit 34. Thetransmitting and receiving unit 33 accesses data of a setting userinterface via the communication path 4 using the address data specifiedby the user. After that, the data of the setting user interface isprovided from the UI providing unit 24 of the image processing apparatus2 to the UI unit 34 of the terminal device 3 through the transmittingand receiving unit 26, the communication path 4, and the transmittingand receiving unit 33.

In steps S06 to S08, the transmitting and receiving unit 26 may transmitpieces of data of plural setting user interfaces to the terminal device3 in descending order of priority. In this case, the controller 31 ofthe terminal device 3 causes the plural setting user interfaces to bedisplayed on the UI unit 34 in descending order of priority.

A setting user interface to be provided from the UI providing unit 24 ofthe image processing apparatus 2 will be described with reference toFIGS. 8 to 10. FIGS. 8 to 10 illustrate examples of user interfacescorresponding to operation states.

For example, if the user specifies address data regarding the function“(1) Printing from Terminal device”, and the transmitting and receivingunit 33 accesses data of setting user interface using the address dataspecified by the user, the UI providing unit 24 provides the terminaldevice 3 with data of a setting user interface regarding the function“(1) Printing from Terminal device”.

FIG. 8 illustrates an example of the setting user interface regardingthe function “(1) Printing from Terminal device”. A setting userinterface 300 is a screen for allowing a user to set the operatingconditions of the printing unit 22 of the image processing apparatus 2on the terminal device 3. The setting user interface 300 is providedfrom the UI providing unit 24 of the image processing apparatus 2 to theUI unit 34 of the terminal device 3 via the communication path 4, and isdisplayed on the UI unit 34. The setting user interface 300 includes, asan example, a display area 310 in which address data (URL) is displayed,a display area 320 in which setting items for printing are displayed,and a selection portion 330 for allowing the user to select a settinguser interface. The user inputs printing conditions, such as the colormode, selection of double sided or duplex printing, the size of anoriginal document, and the name of data to be printed, on the settinguser interface 300. The information input by the user on the settinguser interface 300 is included in control data. When the setting of theprinting conditions has been completed, the user selects a “Start”button on the UI unit 34 of the terminal device 3. When the “Start”button is selected, the transmitting and receiving unit 33 of theterminal device 3 transmits the control data to the image processingapparatus 2 via the communication path 4 as an HTTP request. Further,the transmitting and receiving unit 33 transmits the data to be printedto the image processing apparatus 2 via the communication path 4. Thedata to be printed is stored in the storage unit 27 of the imageprocessing apparatus 2. The controller 25 of the image processingapparatus 2 analyzes the content of the HTTP request, and outputs aprinting instruction to the printing unit 22. The printing unit 22prints an image on a sheet in accordance with the data under control ofthe controller 25.

In addition, for example, if the user specifies address data regardingthe function “(2) Facsimile transmission from Terminal device” and thetransmitting and receiving unit 33 accesses data of a setting userinterface using the address data specified by the user, the UI providingunit 24 provides the terminal device 3 with data of a setting userinterface regarding the function “(2) Facsimile transmission fromTerminal device”.

FIG. 9 illustrates an example of the setting user interface regardingthe function “(2) Facsimile transmission from Terminal device”. Asetting user interface 400 is a screen for allowing a user to set theoperating conditions of the facsimile transmission unit 23 of the imageprocessing apparatus 2 on the terminal device 3. The setting userinterface 400 includes, as an example, a display area 410 in whichaddress data (URL) is displayed, a display area 420 in which settingitems for facsimile transmission are displayed, and a selection portion430 for allowing the user to select a setting user interface. The userinputs facsimile transmission conditions through the setting userinterface 400. The information input by the user through the settinguser interface 400 is included in control data. When the setting of thefacsimile transmission conditions has been completed, the user selects a“Start” button on the UI unit 34 of the terminal device 3. When the“Start” button is selected, the transmitting and receiving unit 33 ofthe terminal device 3 transmits the control data to the image processingapparatus 2 via the communication path 4 as an HTTP request. Further,the transmitting and receiving unit 33 transmits the data to betransmitted via facsimile to the image processing apparatus 2 via thecommunication path 4. The data to be transmitted via facsimile is storedin the storage unit 27 of the image processing apparatus 2. Thecontroller 25 of the image processing apparatus 2 analyzes the contentof the HTTP request, and outputs a facsimile transmission instruction tothe facsimile transmission unit 23. The facsimile transmission unit 23transmits an image based on the data via facsimile under control of thecontroller 25.

In addition, for example, if the user specifies address data regardingthe function “(3) Display of a list of functions” and the transmittingand receiving unit 33 accesses data of a setting user interface usingthe address data specified by the user, the UI providing unit 24provides the terminal device 3 with data of a setting user interfaceused for the “(3) Display of a list of functions”.

FIG. 10 illustrates an example of the setting user interface used forthe “(3) Display of a list of functions”. A setting user interface 500is a screen for allowing a user to select the functions of the imageprocessing apparatus 2 on the terminal device 3. The setting userinterface 500 includes, as an example, a display area 510 in whichaddress data (URL) is displayed, a display area 520 in which a list offunctions of the image processing apparatus 2 is displayed, and aselection portion 530 for allowing the user to select a setting userinterface. When the user selects a function of the image processingapparatus 2 on the setting user interface 500, a setting user interfacefor setting the operating conditions of the function is provided fromthe UI providing unit 24 of the image processing apparatus 2 to theterminal device 3, and is displayed on the UI unit 34.

The controller 31 of the terminal device 3 may store the address data(URL) selected by the user in the storage unit 35 in association withthe operation state information. For example, if the operation state ofthe terminal device 3 is identical to the operation state indicated bythe operation state information stored in the storage unit 35, thecontroller 31 may display the address data associated with the operationstate information on the UI unit 34 upon receipt of an instruction givenby the user for acquiring specific information. That is, the terminaldevice 3 may learn the address data selected by the user, and maydisplay previously selected address data by priority.

As described above, the information providing apparatus according to theexemplary embodiment acquires an operation state of a terminal device,and provides the terminal device with plural pieces of specificinformation, which are assigned priorities in accordance with theoperation state, in descending order of priority. Therefore, specificinformation relating to the current operation state of the terminaldevice may be provided from the information providing apparatus to theterminal device without requiring a user to perform setting on theterminal device.

For example, if the information providing apparatus is implemented bythe image processing apparatus 2, the image processing apparatus 2acquires the operation state of the terminal device 3, selects pluralfunctions (image processing), which are assigned priorities inaccordance with the operation state, and provides the terminal device 3with pieces of address data of respective setting user interfaces forsetting the operating conditions of the individual functions indescending order of priority. That is, the image processing apparatus 2selects plural functions that are expected to be executed in accordancewith the operation state of the terminal device 3, and provides theterminal device 3 with pieces of address data of respective setting userinterfaces for setting the operating conditions of the individualfunctions, in descending order from the function having the highestprobability of being executed. In this manner, pieces of address data ofsetting user interfaces for functions to be executable after the currentoperation of the terminal device 3 has been completed are provided fromthe image processing apparatus 2 to the terminal device 3 in descendingorder from the function having the highest probability of beingexecuted. Therefore, even if a user does not perform setting on theterminal device 3, a setting user interface for a function to beexecutable after the current operation has been completed may beprovided from the image processing apparatus 2 to the terminal device 3.

For example, even if a user does not perform setting for acquiring asetting user interface for printing, a setting user interface forreading an image, or a setting user interface for facsimile transmissionusing the terminal device 3, a setting user interface for a function tobe executable after the current operation has been completed may beprovided from the image processing apparatus 2 to the terminal device 3.

Hardware Configuration

The image processing apparatus 2 discussed above by way of exampleincludes a processor such as a central processing unit (CPU) (notillustrated). The processor executes a program stored in a memory (notillustrated) to implement the respective functions of the UI providingunit 24 and the controller 25. The program is stored in a storage devicesuch as a hard disk drive (HDD) through a recording medium such as acompact disc (CD) or a digital versatile disc (DVD) or via acommunication path such as a network. The program may be stored inadvance in a storage device such as a hard disk drive. The programstored in a storage device such as a hard disk drive is read by a memorysuch as a random access memory (RAM) and is executed by a processor suchas a CPU to implement the respective functions of the UI providing unit24 and the controller 25 described above.

The terminal device 3 discussed above by way of example includes aprocessor such as a CPU (not illustrated). The processor executes aprogram stored in a memory (not illustrated) to implement the respectivefunctions of the controller 31 and the operation state acquisition unit32. The program is stored in the memory through a recording medium suchas a CD or DVD or via a communication path such as a network. Theprogram may be stored in advance in the memory. In addition, if theterminal device 3 is connected to the image processing apparatus 2 viathe communication path 4 or anther communication path, a program forimplementing the function of the operation state acquisition unit 32 maybe transmitted from the image processing apparatus 2 to the terminaldevice 3, and may be stored in the memory of the terminal device 3. Theprogram stored in the memory is executed by a processor such as a CPU toimplement the respective functions of the controller 31 and theoperation state acquisition unit 32 described above.

First Modification

Next, a description will be made of an information providing apparatusand an information providing system according to a first modification.The information providing system according to the first modificationincludes an information providing apparatus, a relay device, and aterminal device. The information providing apparatus and the terminaldevice are connected to each other via the relay device, and specificinformation is provided from the information providing apparatus to theterminal device via the relay device.

FIG. 11 illustrates an example of an image processing system 1Aaccording to the first modification. The image processing system 1Aincludes an image processing apparatus 2, a terminal device 3, and arelay device 5. The terminal device 3 and the relay device 5 areconnected to each other via a communication path 4A, and the imageprocessing apparatus 2 and the relay device 5 are connected to eachother via a communication path 4B. The image processing apparatus 2 andthe terminal device 3 transmit and receive data to and from each othervia the relay device 5. An information providing apparatus according tothe first modification may be implemented by the image processingapparatus 2, by way of example, and an information providing systemaccording to the first modification may be implemented by the imageprocessing apparatus 2, the terminal device 3, and the relay device 5,by way of example. The image processing system 1A according to the firstmodification is different from the image processing system 1 accordingto the exemplary embodiment described above in that the relay device 5is provided.

The communication paths 4A and 4B are substantially the same as thecommunication path 4 described above. The terminal device 3 and therelay device 5 may be connected to each other via a communication pathdifferent from the communication path 4A, and the image processingapparatus 2 and the relay device 5 may be connected to each other via acommunication path different from the communication path 4B. Similarlyto the exemplary embodiment described above, the different communicationpaths may be communication paths used for direct connection. Inaddition, the terminal device 3 and the relay device 5 may be connectedto each other via two communication paths, that is, the communicationpath 4A and another communication path, and the image processingapparatus 2 and the relay device 5 may be connected to each other viatwo communication paths, that is, the communication path 4B and anothercommunication path.

The relay device 5 may be, as an example, a proxy server, and includes acontroller 51. The relay device 5 receives request information andoperation state information from the terminal device 3 via thecommunication path 4A or another communication path. The relay device 5requests the image processing apparatus 2 to send plural pieces ofspecific information to be provided to the terminal device 3, indescending order of priority in accordance with the operation state ofthe terminal device 3 under control of the controller 51. The relaydevice 5 receives plural pieces of specific information, which areassigned priorities, from the image processing apparatus 2 via thecommunication path 4B or another communication path. Then, the relaydevice 5 transmits the plural pieces of specific information, which areassigned priorities, to the terminal device 3 via the communication path4A or another communication path.

The operation of the image processing system 1A according to the firstmodification and an example of how a user uses the image processingsystem 1A will be described with reference to FIG. 12. FIG. 12 is asequence diagram illustrating an example of the procedure of a processperformed by the image processing system 1A.

First, the controller 31 of the terminal device 3 activates applicationsoftware specified by the user. The user performs an operation using theactivated application software. Then, the user gives an instructionusing the UI unit 34 of the terminal device 3 for acquiring specificinformation relating to the operation (step S30). The controller 31requests the operation state acquisition unit 32 to acquire the specificinformation.

The operation state acquisition unit 32 acquires the state of theoperation being performed by the terminal device 3 (step S31). Theoperation state acquisition unit 32 outputs request information andoperation state information to the transmitting and receiving unit 33.

The transmitting and receiving unit 33 of the terminal device 3transmits the request information and the operation state information tothe relay device 5 via the communication path 4A (step S32).Alternatively, the transmitting and receiving unit 33 may transmit therequest information and the operation state information to the relaydevice 5 via a communication path different from the communication path4A. The relay device 5 receives the request information and theoperation state information from the terminal device 3 via thecommunication path 4A or the different communication path. Then, therelay device 5 transmits the request information and the operation stateinformation to the image processing apparatus 2 via the communicationpath 4B or another communication path.

Then, the relay device 5 requests the image processing apparatus 2 tosend specific information having the highest priority (top priority) viathe communication path 4B or another communication path (step S33). Theimage processing apparatus 2 transmits the specific information havingthe highest priority (top priority) to the relay device 5 via thecommunication path 4B or another communication path in accordance withthe operation state indicated by the operation state information (stepS34). Then, the relay device 5 requests the image processing apparatus 2to send specific information having the second highest priority via thecommunication path 4B or another communication path (step S35). Theimage processing apparatus 2 transmits the specific information havingthe second highest priority to the relay device 5 via the communicationpath 4B or another communication path in accordance with the operationstate (step S36). Then, the relay device 5 requests the image processingapparatus 2 to send specific information having the N-th highestpriority via the communication path 4B or another communication path(step S37). The image processing apparatus 2 transmits the specificinformation having the N-th highest priority to the relay device 5 viathe communication path 4B or another communication path in accordancewith the operation state (step S38). Accordingly, the relay device 5requests the image processing apparatus 2 to send plural pieces ofspecific information in descending order of priority, and the imageprocessing apparatus 2 transmits the plural pieces of specificinformation to the relay device 5 in descending order of priority inaccordance with each request.

Then, the relay device 5 transmits the plural pieces of specificinformation, which are assigned priorities, to the terminal device 3 viathe communication path 4A or another communication path (step S39). Thetransmitting and receiving unit 33 of the terminal device 3 receives theplural pieces of specific information from the relay device 5 via thecommunication path 4A or another communication path, and outputs theplural pieces of specific information to the controller 31. For example,the transmitting and receiving unit 33 receives pieces of address dataof the plural setting user interfaces, which are assigned priorities,from the relay device 5 via the communication path 4A or anothercommunication path, and outputs the plural pieces of address dataassigned priorities to the controller 31. The controller 31 causes theplural pieces of specific information acquired from the relay device 5to be displayed on the UI unit 34 (step S40).

The operation after step S40 and an example of how a user uses the imageprocessing system 1A are substantially the same as those of the imageprocessing system 1 according to the exemplary embodiment describedabove, and a description thereof is thus omitted.

Accordingly, as in the exemplary embodiment described above, the imageprocessing apparatus 2 according to the first modification provides theterminal device 3 with pieces of address data of setting user interfacesfor functions to be executable after the current operation of theterminal device 3 has been completed, in descending order from thefunction having the highest probability of being executed. Therefore,setting user interfaces for functions to be executable after the currentoperation has been completed may be provided from the image processingapparatus 2 to the terminal device 3 without requiring a user to performsetting on the terminal device 3.

Second Modification

Next, a description will be made of an information providing apparatusand an information providing system according to a second modification.The information providing system according to the second modificationincludes an information providing apparatus, an operation state database(DB), and a terminal device. The information providing apparatus, theoperation state DB, and the terminal device are connected to one anothervia a communication path.

FIG. 13 illustrates an example of an image processing system 1Baccording to the second modification. The image processing system 1Bincludes an image processing apparatus 2, a terminal device 3, and anoperation state database (DB) 6. The image processing apparatus 2 andthe terminal device 3 are connected to each other via a communicationpath 4C, and the terminal device 3 and the operation state DB 6 areconnected to each other via a communication path 4D. Further, the imageprocessing apparatus 2 and the operation state DB 6 are connected toeach other via a communication path 4E. The information providingapparatus according to the second modification may be implemented by theimage processing apparatus 2, by way of example, and the informationproviding system according to the second modification may be implementedby the image processing apparatus 2, the terminal device 3, and theoperation state DB 6, by way of example. The image processing system 1Baccording to the second modification is different from the imageprocessing system 1 according to the exemplary embodiment describedabove in that the operation state DB 6 is provided.

The communication paths 4C, 4D, and 4E are substantially the same as thecommunication path 4 described above. The image processing apparatus 2and the terminal device 3 may be connected to each other via acommunication path different from the communication path 4C, and theterminal device 3 and the operation state DB 6 may be connected to eachother via a communication path different from the communication path 4D.Further, the image processing apparatus 2 and the operation state DB 6may be connected to each other via a communication path different fromthe communication path 4E. Similarly to the exemplary embodimentdescribed above, the different communication paths may be communicationpaths used for direct connection. In addition, the image processingapparatus 2 and the terminal device 3 may be connected to each other viatwo communication paths, that is, the communication path 4C and anothercommunication path, and the terminal device 3 and the operation state DB6 may be connected to each other via two communication paths, that is,the communication path 4D and another communication path. Further, theimage processing apparatus 2 and the operation state DB 6 may beconnected to each other via two communication paths, that is, thecommunication path 4E and another communication path.

The operation state DB 6 receives operation state information from theterminal device 3, and stores the received operation state information.For example, the operation state DB 6 stores the operation stateinformation in association with request information. Upon receipt ofrequest information from the terminal device 3, the image processingapparatus 2 acquires operation state information associated with therequest information from the operation state DB 6.

The operation of the image processing system 1B according to the secondmodification and an example of how a user uses the image processingsystem 1B will be described with reference to FIG. 14. FIG. 14 is asequence diagram illustrating an example of the procedure of a processperformed by the image processing system 1B.

First, the controller 31 of the terminal device 3 activates applicationsoftware specified by the user. The user performs an operation using theactivated application software. Then, the user gives an instructionusing the UI unit 34 of the terminal device 3 for acquiring specificinformation relating to the operation (step S50). The controller 31requests the operation state acquisition unit 32 to acquire the specificinformation (step S51).

The operation state acquisition unit 32 acquires the state of theoperation being performed by the terminal device 3 (step S52). Theoperation state acquisition unit 32 outputs request information andoperation state information to the transmitting and receiving unit 33.

The transmitting and receiving unit 33 of the terminal device 3transmits the request information and the operation state information tothe operation state DB 6 via the communication path 4D, and registersthe operation state in the operation state DB 6 (step S53). Theoperation state DB 6 stores the operation state information inassociation with the request information. The transmitting and receivingunit 33 may transmit the request information and the operation stateinformation to the operation state DB 6 via a communication pathdifferent from the communication path 4D.

Further, the transmitting and receiving unit 33 of the terminal device 3transmits the request information to the image processing apparatus 2via the communication path 4C (step S54). The transmitting and receivingunit 33 may transmit the request information to the image processingapparatus 2 via a communication path different from the communicationpath 4C.

The transmitting and receiving unit 26 of the image processing apparatus2 receives the request information from the terminal device 3 via thecommunication path 4C or another communication path, and outputs therequest information to the controller 25. The controller 25 acquiresoperation state information relating to the request information from theoperation state DB 6 via the transmitting and receiving unit 26 and thecommunication path 4E (step S55).

The controller 25 selects plural pieces of specific information, whichare assigned priorities, in accordance with the operation stateindicated by the operation state information. Then, the transmitting andreceiving unit 26 transmits the specific information having the highestpriority (top priority) selected by the controller 25 to the terminaldevice 3 via the communication path 4C or another communication path(step S56). For example, the transmitting and receiving unit 26 firstlytransmits address data of a setting user interface for setting theoperating conditions of the highest priority function to the terminaldevice 3. Further, the transmitting and receiving unit 26 transmits thespecific information having the second highest priority selected by thecontroller 25 to the terminal device 3 via the communication path 4C oranother communication path (step S57). For example, the transmitting andreceiving unit 26 secondly transmits address data of a setting userinterface for setting the operating conditions of the second highestpriority function to the terminal device 3. Then, the transmitting andreceiving unit 26 transmits the specific information having the N-thhighest priority selected by the controller 25 to the terminal device 3via the communication path 4C or another communication path (step S58).Accordingly, the transmitting and receiving unit 26 transmits pluralpieces of specific information selected by the controller 25 to theterminal device 3 in descending order of priority.

The transmitting and receiving unit 33 of the terminal device 3 receivesthe plural pieces of specific information from the image processingapparatus 2 via the communication path 4C or another communication path,and outputs the plural pieces of specific information assignedpriorities to the controller 31 (step S59). For example, thetransmitting and receiving unit 33 receives pieces of address data ofplural setting user interfaces assigned priorities from the imageprocessing apparatus 2 via the communication path 4C or anothercommunication path, and outputs the plural pieces of address dataassigned priorities to the controller 31. The controller 31 causes theplural pieces of specific information acquired from the image processingapparatus 2 to be displayed on the UI unit 34 (step S60).

The operation after step S60 and an example of how a user uses the imageprocessing system 1B are substantially the same as those of the imageprocessing system 1 according to the exemplary embodiment describedabove, and a description thereof is thus omitted.

Accordingly, as in the exemplary embodiment described above, the imageprocessing apparatus 2 according to the second modification provides theterminal device 3 with pieces of address data of setting user interfacesfor functions to be executable after the current operation of theterminal device 3 has been completed, in descending order from thefunction having the highest probability of being executed. Therefore,setting user interfaces for functions to be executable after the currentoperation has been completed may be provided from the image processingapparatus 2 to the terminal device 3 without requiring a user to performsetting on the terminal device 3.

The foregoing description of the exemplary embodiments of the presentinvention has been provided for the purposes of illustration anddescription. It is not intended to be exhaustive or to limit theinvention to the precise forms disclosed. Obviously, many modificationsand variations will be apparent to practitioners skilled in the art. Theembodiments were chosen and described in order to best explain theprinciples of the invention and its practical applications, therebyenabling others skilled in the art to understand the invention forvarious embodiments and with the various modifications as are suited tothe particular use contemplated. It is intended that the scope of theinvention be defined by the following claims and their equivalents.

What is claimed is:
 1. An information providing apparatus comprising: afirst receiving unit configured to receive, from a terminal device,operation state information indicating an operation state of theterminal device, the terminal device being connected to the informationproviding apparatus via a communication path; a transmitting unitconfigured to transmit, in response to determining, based on theoperation state information, that the terminal device is in a specificoperation state associated with a processing operation, one or morepieces of user interface information to the terminal device, the one ormore pieces of user interface information being associated with theoperation state; a second receiving unit configured to receive controldata for a processing operation to be performed by the informationproviding apparatus, the control data is set by the terminal devicebased on the one or more pieces of user interface information; and aperforming unit configured to perform processing operation based on thecontrol data.
 2. The information providing apparatus according to claim1, wherein the transmitting unit is configured to transmit to theterminal device, as user interface information, address data of a userinterface.
 3. The information providing apparatus according to claim 1,wherein the transmitting unit is configured to transmit to the terminaldevice, as user interface information, data of a setting user interfacefor setting the operating conditions of functions of the informationproviding apparatus.
 4. The information providing apparatus according toclaim 1, the operation state is a type of application software operatingon the terminal device.
 5. The information providing apparatus accordingto claim 1, the operation state is an operation being performed usingapplication software operating on the terminal device.